import { idNameVo } from '@/api/types';

export interface EquipVO {
  /**
   * id
   */
  id: string | number;

  /**
   * 设备名
   */
  name: string;

  /**
   * 所属用户
   */
  userId: string | number;

  /**
   * 设备别名
   */
  alias: string;

  /**
   * 激活状态
   */
  active: number;

  /**
   * 激活时间
   */
  activeTime: string;

  /**
   * 制造商
   */
  manufacturer: string;

  /**
   * 型号
   */
  model: string;

  /**
   * 硬件版本
   */
  firmwareVersion: string;

  /**
   * 软件版本
   */
  softwareVersion: string;

  /**
   * 位置
   */
  location: string;

  /**
   * 运行状态
   */
  runStatus: number;

  /**
   * 运行时间
   */
  startTime: string;

  /**
   * 停止时间
   */
  endTime: string;

  /**
   * 上次运行
   */
  lastStartTime: string;

  /**
   * 上次停止
   */
  lastEndTime: string;
}

export interface EquipForm extends BaseEntity {
  /**
   * id
   */
  id?: string | number;

  /**
   * 设备名
   */
  name?: string;

  /**
   * 所属用户id
   */
  userId?: string | number;

  /**
   * 所属用户
   */
  userName?: string;

  /**
   * 设备别名
   */
  alias?: string;

  /**
   * 激活状态
   */
  active?: number;

  /**
   * 激活时间
   */
  activeTime?: string;

  /**
   * 制造商
   */
  manufacturer?: string;

  /**
   * 型号
   */
  model?: string;

  /**
   * 硬件版本
   */
  firmwareVersion?: string;

  /**
   * 软件版本
   */
  softwareVersion?: string;

  /**
   * 位置
   */
  location?: string;

  /**
   * 运行状态
   */
  runStatus?: number;

  /**
   * 运行时间
   */
  startTime?: string;

  /**
   * 停止时间
   */
  endTime?: string;

  /**
   * 上次运行
   */
  lastStartTime?: string;

  /**
   * 上次停止
   */
  lastEndTime?: string;

  sensorIds?: (string | number)[];
}

export interface EquipQuery extends PageQuery {
  /**
   * 激活状态
   */
  active?: number;

  /**
   * 激活时间
   */
  activeTime?: string;

  /**
   * 制造商
   */
  manufacturer?: string;

  /**
   * 型号
   */
  model?: string;

  /**
   * 硬件版本
   */
  firmwareVersion?: string;

  /**
   * 软件版本
   */
  softwareVersion?: string;

  /**
   * 运行状态
   */
  runStatus?: number;

  /**
   * 上次运行
   */
  lastStartTime?: string;

  /**
   * 日期范围参数
   */
  params?: any;
}
